방금 MacOS X 용 Python 3.6.1을 설치했습니다. 콘솔을 실행하려고하면 (또는 Python3으로 무엇이든 실행)이 오류가 발생합니다. AttributeError : 'enum'모듈에 'IntFlag'속성이 없습니다. $ /Library/Frameworks/Python.framework/Versions/3.6/bin/python3 사이트 모듈을 가져 오지 못했습니다. 역 추적 (가장 최근 호출 마지막) : 파일 "/usr/local/Cellar/python3/3.6.1/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site.py", 544 행,본관() 파일 "/usr/local/Cellar/python3/3.6.1/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site.py", 줄 530, 기본 알려진 _ 경로 = addusersitepackages (알려진 _ 경로) addusersitepackages의 파일 "/usr/local/Cellar/python3/3.6.1/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site.py", 282 행 user_site = getusersitepackages () getusersitepackages의 파일 "/usr/local/Cellar/python3/3.6.1/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site.py", 258 행 user_base = getuserbase () # USER_BASE도 설정됩니다. getuserbase의 파일 "/usr/local/Cellar/python3/3.6.1/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site.py", 248 행 USER_BASE = get_config_var ( 'userbase') get_config_var의 "/usr/local/Cellar/python3/3.6.1/Frameworks/Python.framework/Versions/3.6/lib/python3.6/sysconfig.py", 601 행 파일 return get_config_vars (). get (name) 파일 "/usr/local/Cellar/python3/3.6.1/Frameworks/Python.framework/Versions/3.6/lib/python3.6/sysconfig.py", 줄 580, get_config_vars import _osx_support 파일 "/usr/local/Cellar/python3/3.6.1/Frameworks/Python.framework/Versions/3.6/lib/python3.6/_osx_support.py", 4 행, <모듈> 다시 가져 오기 파일 "/usr/local/Cellar/python3/3.6.1/Frameworks/Python.framework/Versions/3.6/lib/python3.6/re.py", 142 행, RegexFlag (enum.IntFlag) 클래스 : AttributeError : 'enum'모듈에 'IntFlag'속성이 없습니다. IntFlag 클래스는 enum.py 내에 있습니다. 그렇다면 AttributeError가 발생하는 이유는 무엇입니까?
2021-01-02 08:12:26
열거 형이 표준 라이브러리 열거 형 모듈이 아니기 때문입니다. enum34 패키지가 설치되어있을 것입니다. 이 경우 한 가지 방법은 enum .__ file__ 속성을 검사하는 것입니다. 열거 형 가져 오기 print (enum .__ file__) # 표준 라이브러리 위치는 다음과 같아야합니다. # /usr/local/lib/python3.6/enum.py 파이썬 3.6부터 enum34 라이브러리는 더 이상 표준 라이브러리와 호환되지 않습니다. 라이브러리도 필요하지 않으므로 간단히 제거 할 수 있습니다. pip 제거 -y enum34 Python 버전 <= 3.4 및> 3.4 모두에서 실행하기 위해 코드가 필요한 경우 enum-compat을 요구 사항으로 사용할 수 있습니다. 표준 라이브러리 열거 형없이 이전 버전의 파이썬에 대해서만 enum34를 설치합니다. | 여전히이 문제가 있는지 확실하지 않습니다. 비슷한 문제가 있었고 PYTHONPATH를 설정 해제하여 간단히 해결할 수있었습니다. $ PYTHONPATH 설정 해제 | 나 에게이 오류는 pycharm에 통합하기 위해 gcloud 구성 요소 app-engine-python을 설치 한 후에 발생했습니다. pycharm이 이제 app-engine에 업로드되지 않더라도 모듈을 제거하면 도움이되었습니다. | PyCharm에서 Google 앱 엔진 Python 3.7 표준 환경 프로젝트를 실행하는 동안이 오류가 발생하여 여기에 오는 사람은 다음과 같습니다. 실행할 구성이 Google App Engine 구성이 아닌 Flask 용인지 확인합니다. 그런 다음 환경 설정 >> 언어 및 프레임 워크 >> Google App Engine에서 Google App Engine 지원을 비활성화합니다. 이 링크에 따른 이유 전반적인 목표는 앱이 완전히 이식 가능하고 모든 표준 Python 환경에서 실행되어야한다는 것입니다. App Engine Python 앱이 아닌 표준 Python 앱을 작성합니다. 이러한 변화의 일환으로 더 이상 앱의 핵심 기능에 독점 App Engine API 및 서비스를 사용할 필요가 없습니다. 현재 App Engine API는 Python 3.7 런타임에서 사용할 수 없습니다. PyCharm에서 Google 앱 엔진 프로젝트로 python 3.7 프로젝트를 만들 때 여전히 python2.7 앱과 동일한 방식으로 수행하려고 시도합니다. | 면책 조항 : @ juanpa.arrivillaga,이 답변이 보이면 언제든지 직접 작성해 주시면이 게시물을 제거하겠습니다. @ juanpa.arrivillaga는 위에서 언급했습니다. 혹시 작업 디렉토리에 enum.py 파일 이름이 있습니까? 이것이 내가 만난 문제였습니다. 당시 파이썬의 enum 모듈을 알지 못했고 테스트 파일 이름을 enum.py로 지정했습니다. 파일 이름이 모듈 이름이므로 충돌이 발생했습니다. 모듈에 대한 자세한 정보 : https://docs.python.org/2/tutorial/modules.html | pycharm 환경 설정에서 "Google App Engine 지원"을 비활성화하면이 문제가 해결되었습니다. | enum34 버전 1.1.8을 설치하면 효과적이었습니다. pyproject.toml에 enum34 = "== 1.1.8"을 추가하여이 문제를 해결할 수있었습니다. 분명히 enum34에는 v1.1.8에이 오류를 방지하는 기능이 있었지만 이것은 v1.1.9 이상에서 회귀했습니다. 이것은 해결 방법 일뿐입니다. 그만큼 더 나은 솔루션은 패키지가 환경 마커를 사용하는 것이므로 필요하지 않으면 enum34를 전혀 설치할 필요가 없습니다. 출처 : https://github.com/python-poetry/poetry/issues/1122 | Håken Lid의 답변은 내 문제를 해결하는 데 도움이되었습니다 (감사합니다!). 제 경우에는 Docker 컨테이너에서 Flask를 실행하는 Python3.7 (FROM tiangolo / uwsgi-nginx-flask : python3.7-alpine3.7)에 있습니다. 제 경우에는 enum34가 다른 라이브러리에 의해 설치되었습니다 (pip install smartsheet-python-sdk). 유사한 Docker 컨테이너 문제가 발생하는 사람들을 위해 다음은 내 최종 Dockerfile입니다 (관련 줄로 분리됨). tiangolo / uwsgi-nginx-flask : python3.7-alpine3.7에서 ... pip install -r requirements.txt 실행 pip uninstall -y enum34 실행 ... | python2와 python3 모두에 대해 PYTHONPATH를 유지해야하는 경우 별칭 문을 작성하여 bash_profile에 적절한 PYTHONPATH를 설정할 수 있습니다. ~ / .bash_profile에 PYTHONPATH2 및 PYTHONPATH3 변수를 하드 코딩하고 끝에 다음 별칭을 추가합니다. alias python = 'export PYTHONPATH = $ {PYTHONPATH2}; python' alias python3 = 'export PYTHONPATH = $ {PYTHONPATH3}; python3' python2를 더 자주 사용하므로 내 python (python2 참조). | 이 문제가 발생할 때마다 : AttributeError : 'enum'모듈에 'IntFlag'속성이 없습니다. 먼저 명령을 실행합니다. PYTHONPATH 설정 해제 그런 다음 원하는 명령을 실행하면 성공했습니다. | pip install--ignore-installed enum34를 사용하여 수행했습니다. 필요한 라이브러리가 설치되면 빌드 중에 경고를 찾습니다. 다음과 같은 오류가 발생했습니다 .'wheel '패키지가 설치되지 않았기 때문에 향후 레거시 setup.py 설치 사용 오류 : pyejabberd 0.2.11에는 요구 사항 enum34 == 1.1.2가 있지만 호환되지 않는 enum34 1.1.10이 있습니다. . 이 문제를 해결하려면 이제 다음 명령을 실행하십시오. pip freeze | grep enum34. 이것은 설치된 enum34의 버전을 제공합니다. 이제 pip uninstall enum34로 제거하고 필요한 버전을 pip install "enum34 == 1.1.20"으로 다시 설치하십시오. | PyCharm에서 테스트를 실행할 때이 문제가 발생하면 두 번째 상자가구성. | 내 컴퓨터에 Python 2와 Python 3이 설치되어 있습니다. 이상한 이유로 파이썬 3의 sys.path에 re 모듈이 호출 될 때 Python2의 사이트 패키지 라이브러리 디렉토리에 대한 경로도 있습니다. Python 3을 실행하고 enum을 가져 와서 print (enum .__ file__)하면 시스템이 사이트 패키지에 대한이 Python 2 경로를 표시하지 않습니다. 따라서 매우 거칠고 더러운 해킹은 enum을 가져 오는 모듈을 직접 수정하고 (트레이스 백 경로를 따라) enum을 가져 오기 직전에 다음 코드를 삽입하는 것입니다. 수입 시스템 i의 경우 enumerate (sys.path)의 p : p.lower ()의 "python27"또는 p.lower ()의 "python2.7"인 경우 : sys.path.pop (i) 열거 형 가져 오기 그것은 내 문제를 해결했습니다. | python -m grpc_tools.protoc --version을 실행하는 동안 에도이 문제가 발생했습니다. 사이트 패키지까지 PYTHONPATH를 설정하고 모든 명령 프롬프트 창을 종료해야했고 작동했습니다. gRPC 사용자에게 도움이되기를 바랍니다. | python3.8 및 tensorflow 2.2.0을 사용하는 가상 환경 커널의 jupyterlab에있는 ubuntu20.04에서이 문제가 발생했습니다. 오류 메시지 : 역 추적 (가장 최근 호출 마지막) : _run_module_as_main에있는 "/usr/lib/python2.7/runpy.py"파일, 174 행 "__main__", fname, 로더, pkg_name) _run_code에있는 "/usr/lib/python2.7/runpy.py"파일 72 행 run_globals의 exec 코드 파일 "/home/hu-mka/.local/lib/python2.7/site-packages/ipykernel_launcher.py", 15 행, <모듈> ipykernel에서 kernelapp을 앱으로 가져 오기 파일 "/home/hu-mka/.local/lib/python2.7/site-packages/ipykernel/__init__.py", 2 행, <모듈> .connect 가져 오기에서 * 파일 "/home/hu-mka/.local/lib/python2.7/site-packages/ipykernel/connect.py", 13 행, <모듈> IPython.core.profiledir에서 가져 오기 ProfileDir 파일 "/home/hu-mka/.local/lib/python2.7/site-packages/IPython/__init__.py", 48 행, <모듈> .core.application import 응용 프로그램에서 파일 "/home/hu-mka/.local/lib/python2.7/site-packages/IPython/core/application.py", 23 행, <모듈> traitlets.config.application import 애플리케이션에서 catch_config_error 파일 "/home/hu-mka/.local/lib/python2.7/site-packages/traitlets/__init__.py", 줄 1, <모듈> .traitlets에서 가져 오기 * 파일 "/home/hu-mka/.local/lib/python2.7/site-packages/traitlets/traitlets.py", 49 행, <모듈> 열거 형 가져 오기 ImportError : enum이라는 모듈이 없습니다. 문제는 / usr / bin / python의 심볼릭 링크에서 python2를 가리키는 것입니다. 해결책: cd / usr / bin / sudo ln -sf python3 파이썬 Python 2 사용이 곧 완전히 줄어들기를 바랍니다. | HuggingFace에서 Transformers 라이브러리를 설치하는 동안이 문제가 발생했습니다. 그것은 패키지 enum34가 파이썬에 내장 된 열거 형을 재정의하는 내 환경에 설치되었다는 사실 때문입니다. 이 패키지는 아마도 파이썬 3.6 이상에서 더 이상 필요하지 않은 포워드 호환성을 위해 설치되었을 것입니다. 그래서 해결책은 간단합니다. pip 제거 -y enum34 | 불행히도 어떤 제안도 도움이되지 않았지만 더 많은 인터넷 검색 후 pip 설치 aenum 나를 위해 해결 | 누군가가 virtualenv에서 Jupyter 커널을 실행하려고 할 때이 문제가 발생하면 virtualenv 커널의 kernel.json에 올바른 PYTHONPATH를 추가하십시오 (예 : Python 3). { "argv": [ "/usr/local/Cellar/python/3.6.5/bin/python3.6", "-미디엄", "ipykernel_launcher", "-에프", "{연결 _ 파일}" ], "display_name": "Python 3 (TensorFlow)", "언어": "파이썬", "env": { "PYTHONPATH": "/Users/dimitrijer/git/mlai/.venv/lib/python3.6:/Users/dimitrijer/git/mlai/.venv/lib/python3.6/lib-dynload:/usr/local/ Cellar / python / 3.6.5 / Frameworks / Python.framework / Versions / 3.6 / lib / python3.6 : /Users/dimitrijer/git/mlai/.venv/lib/python3.6/site-packages " } } | 너의 답 StackExchange.ifUsing ( "editor", function () { StackExchange.using ( "externalEditor", function () { StackExchange.using ( "snippets", function () { StackExchange.snippets.init (); }); }); }, "코드 스 니펫"); StackExchange.ready (function () { var channelOptions = { 태그 : "".split ( ""), id : "1" }; initTagRenderer ( "". split ( ""), "".split ( ""), channelOptions); StackExchange.using ( "externalEditor", function () { // 스 니펫이 활성화 된 경우 스 니펫 후에 편집기를 실행해야합니다. if (StackExchange.settings.snippets.snippetsEnabled) { StackExchange.using ( "snippets", function () { createEditor (); }); } else { createEditor (); } }); function createEditor () { StackExchange.prepareEditor ({ useStacksEditor : false, heartbeatType : '답변', autoActivateHeartbeat : false, convertImagesToLinks : true, noModals : true, showLowRepImageUploadWarning : true, scoreToPostImages : 10, bindNavPrevention : true, 접미사 : "", imageUploader : { brandingHtml : "Powered by \ u003ca href = \"https : //imgur.com/ \ "\ u003e \ u003csvg class = \"svg-icon \ "width = \"50 \ "height = \"18 \ "viewBox = \ "0 0 50 18 \"fill = \ "none \"xmlns = \ "http : //www.w3.org/2000/svg \"\ u003e \ u003cpath d = \ "M46.1709 9.17788C46.1709 8.26454 46.2665 7.94324 47.1084 7.58816C47.4091 7.46349 47.7169 7.36433 48.0099 7.26993C48.9099 6.97997 49.672 6.73443 49.672 5.93063C49.672 5.22043 48.98324.61182 48.1414 4.61182C47.4335 4.61182 46.7256 4.91628 46.0943 5.50789C45.7307 4.9328 45.2525 4.66231 44.6595 4.66231C43.6264 4.66231 43.1481 5.28821 43.1481 6.59048V11.9512C43.1481 13.2535 43.6709 13.2535 44.6595 13.8962V9.1535 44.6595 13.8962C45.692488Z / \ u003e \ u003cpath d = \ "M32.492 10.1419C32.492 12.6954 34.1182 14.0484 37.0451 14.0484C39.9723 14.0484 41.5985 12.6954 41.5985 10.1419V6.59049C41.5985 5.28821 41.1394 4.66232 40.1061 4.6629049V39.0732C 4.66232 38.5948 5.28821 .5948 10.8521 38.2696 11.5455 37.0451 11.5455C35.8209 11.5455 35.4954 10.8521 35.4954 9.60062V6.59049C35.4954 5.28821 35.0173 4.66232 34.0034 4.66232C32.9703 4.66232 32.492 5.28821 32.492 6.59049V10.1419Z \ "/ \ u003e \ u003 \ "clip-rule = \"evenodd \ "d = \"M25.6622 17.6335C27.8049 17.6335 29.3739 16.9402 30.2537 15.6379C30.8468 14.7755 30.9615 13.5579 30.9615 11.9512V6.59049C30.9615 5.28821 30.4833 4.66231 29.4502 4.66231C28.9913 4.9497 8 28.1109 5.50789C27.499 4.86533 26.7335 4.56087 25.7005 4.56087C23.1369 4.56087 21.0134 6.57349 21.0134 9.27932C21.0134 11.9852 23.003 13.913 25.3754 13.913C26.5612 13.913 27.4607 13.4902 28.1109 12.6616C234628.1256 12.6616C28.1109 12.79342 28.1161 12.77. 12.983C28.1301 14.4373 27.2502 15.2321 25.777 15.2321C24.8349 15.2321 24.1352 14.9821 23.5661 14.7787C23.176 14.6393 22.8472 14.5218 22.5437 14.5218C21.7977 14.5218 21.2429 15.0123 21.2429 15.3172427.9072M23354.13172427.9072 7.09766 26.1024 7.09766C27.2119 7.09766 28.0918 7.94324 28.0918 9.27932C28.0918 10.6321 27.2311 11.5116 26.1024 11.5116C24.9737 11.5116 24.1317 10.6491 24.1317 9.27932Z \ "/ \ u003e \ u003cpath d = \"16376373.8962 18.2965 11.9512C16637.8045 11.9512C16.8045 13.8962C19.3298 13.8962 19.8079 13.2535 19.8079 11.9512V8.12928C19.8079 5.82936 18.4879 4.62866 16.4027 4.62866C15.1594 4.62866 14.279 4.98375 13.3609 5.88013C12.653 5.05154 11.6581 4.62866 10.3573 4.62866C9.34336 4.62866 8.57809 4.89931 7.9466 5.5079C7.58314 4.9328 7.10506 4.66232 6.51203 4.66232C5.47873 4.66232 5.00066 5.28821 5.00066 6.59049V11.9512C5.00066 13.2535 5.47873 13.89074479 11.8.9512C5.00066 13.2535 5.47873 13.89074479 11.8. 0232 7.58817 8.44431 6.91179 9.53458 6.91179C10.5104 6.91179 10.893 7.58817 10.893 8.94108V11.9512C10.893 13.2535 11.3711 13.8962 12.4044 13.8962C13.4375 13.8962 13.9157 13.2535 13.9157 11.9591145 15.4269 164.391179 16.8091145 7.58817 164.391179 16.8091145 7.58817 14.391179 V11.9512Z \ "/ \ u003e \ u003cpath d = \"M3.31675 6.59049C3.31675 5.28821 2.83866 4.66232 1.82471 4.66232C0.791758 4.66232 0.313354 5.28821 0.313354 6.59049V11.9512C0.313354 13.2535 0.791758 13.8962 1.82471 13.8962C2.85798 13.8962 3.31675 13.8962 1.82471 13.8962C2.85798 13.8962 3.31675 11.9512V6.59049Z \ "/ \ u003e \ u003cpath d = \"M1.87209 0.400291C0.843612 0.400291 0 1.1159 0 1.98861C0 2.87869 0.822846 3.57676 1.87209 3.57676C2.90056 3.57676 3.7234 2.87869 3.7234 1.98861C3.7234 1.1159 2.90056 0.400291 1.87209 0.400291Z \ "fill = \"# 1BB76E \ "/ \ u003e \ u003c / svg \ u003e \ u003c / a \ u003e", contentPolicyHtml : "\ u003ca href = \"https : //stackoverflow.com/help/licensing \ "\ u003ecc by-sa \ u003c / a \ u003e \ u003ca href = \"https://stackoverflow.com에 따라 라이선스가 부여 된 사용자 기여 / legal / content-policy \ "\ u003e (콘텐츠 정책) \ u003c / a \ u003e", allowUrls : true }, onDemand : true, 폐기 선택기 : ".discard-answer" , immediatelyShowMarkdownHelp : true, enableTables : true, enableSnippets : true }); } }); Stack Overflow에 대한 답변에 기여해 주셔서 감사합니다! 질문에 반드시 답해주십시오. 세부 사항을 제공하고 연구를 공유하십시오! 그러나 피하십시오… 도움, 설명을 요청하거나 다른 답변에 응답합니다. 의견에 근거한 진술 작성 참고 자료 또는 개인적인 경험으로 백업하십시오. 자세한 내용은 훌륭한 답변 작성에 대한 팁을 참조하십시오. 초안 저장 초안이 삭제되었습니다. 가입 또는 로그인 StackExchange.ready (function () { StackExchange.helpers.onClickDraftSave ( '# login-link'); }); Google을 사용하여 가입 Facebook을 사용하여 가입 이메일 및 비밀번호를 사용하여 가입 제출 게스트로 게시 이름 이메일 필수이지만 표시되지 않음 StackExchange.ready ( 함수 () { StackExchange.openid.initPostLogin ( '. new-post-login', 'https % 3a % 2f % 2fstackoverflow.com % 2fquestions % 2f43124775 % 2fwhy-python-3-6-1-throws-attributeerror-module-enum-has- no-attribute-intflag % 23new-answer ','question_page '); } ); 게스트로 게시 이름 이메일 필수이지만 표시되지 않음 답변 게시 포기 "답변 게시"를 클릭하면 서비스 약관, 개인 정보 보호 정책 및 쿠키 정책에 동의하게됩니다. 찾고있는 답변이 아닙니까? python python-3.x enums python-3.6 attributeerror 태그가 지정된 다른 질문을 찾아 보거나 직접 질문하십시오.